﻿
namespace System.Linq.Functional
{
    public sealed class FuncEx
    {
        public static Func<TResult> AsFunc<TResult>(Func<TResult> func)
        {
            return func;
        }

        public static Func<T, TResult> AsFunc<T, TResult>(Func<T, TResult> func)
        {
            return func;
        }

        public static Func<T1, T2, TResult> AsFunc<T1, T2, TResult>(Func<T1, T2, TResult> func)
        {
            return func;
        }

        public static Func<T1, T2, T3, TResult> AsFunc<T1, T2, T3, TResult>(Func<T1, T2, T3, TResult> func)
        {
            return func;
        }

        public static Func<T1, T2, T3, T4, TResult> AsFunc<T1, T2, T3, T4, TResult>(Func<T1, T2, T3, T4, TResult> func)
        {
            return func;
        }
    }
}
